/**
 * 
 */
package com.acme.bankapp.domain.bank.account;

import com.acme.bankapp.service.bank.exception.NotEnoughFundsException;
import com.acme.bankapp.service.bank.exception.OverDraftLimitExceededException;

/**
 * @author nulls.narik
 */
public interface Account {
	void deposit(double x) throws IllegalArgumentException;
	
	void withdraw(double x) throws IllegalArgumentException, NotEnoughFundsException, OverDraftLimitExceededException;
	
	double maximumAmountToWithdraw();
	
	double getBalance();
}
